home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 5 / Skunkware 5.iso / src / X11 / wais / ui / Imakefile < prev    next >
Makefile  |  1995-05-09  |  5KB  |  223 lines

  1. #    @(#) Imakefile 12.1 95/05/09 
  2. #
  3. # UI's for the WAIS system
  4. #  -brewster 2/91
  5. #
  6. # S000 18 Sep 1993 rr@sco.com
  7. # placed under SCCS and turned into an Imakefile
  8. #
  9. # $Log: Makefile,v $
  10. # Revision 5.1  1992/07/10  23:09:59  curtisg
  11. # Distributed version
  12. #
  13. # Revision 1.13  92/03/17  14:28:09  jonathan
  14. # Updated for new library schemes.
  15. # Revision 1.12  92/02/15  19:54:54  jonathan
  16. # Added $Log for RCS.  Updated VERSION
  17. #
  18. # added waisq
  19. # - Jonny G 2/91
  20. # added swais (screen-ui)
  21. # - jcurran 6/91
  22. # Common customizations:
  23. # for the NEXT machine, HP machines, or old BSD cc, see cflags
  24.  
  25. SHELL=/bin/sh
  26.  
  27. VERSION = 84
  28.  
  29. LIBDIR             = ../lib
  30. BINDIR             = ../bin
  31.  
  32. # command name for a simple shell interface
  33. SHELL_UI_CMD         = waissearch
  34. SHELL_UI_SIG_CMD    = waissearch-sig
  35.  
  36. SHELL_UTIL_CMD         = waisq
  37. SCREEN_UI_CMD         = swais
  38.  
  39. # For a smaller client, but with no local search,
  40. # use this line this to:
  41. # IR_LIB    = ../bin/client.a
  42.  
  43. IR_LIB        = $(LIBDIR)/libinv.a
  44. SIG_LIB        = $(LIBDIR)/libsig.a
  45. PROTOCOL_LIB    = $(LIBDIR)/libwais.a
  46. UI_LIB        = $(LIBDIR)/libui.a
  47.  
  48. #UI_LIB         = $(IR_LIB) $(PROTOCOL_LIB)
  49. UI_SIG_LIB     = ../ir/seeker_dummy.o $(SIG_LIB) $(PROTOCOL_LIB)
  50.  
  51. PROTDIR = ../ir
  52. SRCDIR = ./
  53.  
  54. AR = ar
  55. ARFLAGS = r
  56.  
  57. # on SGIs, set this to true
  58. RANLIB = true
  59.  
  60. RM = /bin/rm -f
  61. INSTALL = cp
  62.  
  63. #
  64. # Files.
  65. #
  66.  
  67. # List of source files for saber.
  68.  
  69. SHELL_UI_OBJ=     shell-ui.o
  70. SCREEN_UI_OBJ=     screen-ui.o
  71.  
  72. #
  73. # Compilation.
  74. #
  75.  
  76. # C Compiler.  Use either cc or gcc.
  77. CC = cc
  78.  
  79. # Compiler & linker flags.
  80. # Compiler debug flag.  Use -g for debugging, -O for optimization.
  81. # for antique bsd add -DBSD 
  82. # for XENIX add -M3e -Zi
  83. CFLAGS = -O -I$(PROTDIR) -I$(LIBDIR) -DTELL_USER
  84.  
  85. # this is for SunOS 4.X
  86. # LFLAGS = -Bstatic
  87.  
  88. # dealing with taking an intenet name and resolving it.  
  89. # set to -lresolv or nothing
  90. #RESOLVER=    -lresolv 
  91. RESOLVER    = -lsocket
  92.  
  93. FTWLIB        = $(LIBDIR)/libftw.a
  94. SCREENLIBS    = -lcurses -ltermcap
  95. SCREENLIBS    = -lcurses
  96.  
  97. all:: $(SHELL_UI_CMD) $(SHELL_UTIL_CMD) $(SCREEN_UI_CMD) wais.el
  98.  
  99. QUES =  waisq.c
  100.  
  101. # objects for libui.a
  102. LIBUI_OBJ =  document.o source.o wais-ui.o question.o
  103.  
  104. QOBJ =  waisq.o \
  105.      question.o \
  106.      wais-ui.o \
  107.     document.o
  108.  
  109. SOBJ =  screen-ui.o \
  110.      question.o \
  111.      wais-ui.o \
  112.     document.o
  113.  
  114. OBJS =  util.o \
  115.     source.o
  116.  
  117. SSRC =  screen-ui.c \
  118.      question.c \
  119.     document.c \
  120.     wais-ui.c
  121.  
  122. QSRC =  waisq.c \
  123.      question.c \
  124.     document.c \
  125.     wais-ui.c
  126.  
  127. SRC =      util.c \
  128.     source.c
  129.  
  130. $(IR_LIB)::
  131.     (cd ../ir;make ${IR_LIB})
  132.  
  133. $(SIG_LIB)::
  134.     (cd ../ir;make ${SIG_LIB})
  135.  
  136. $(PROTOCOL_LIB)::
  137.     (cd ../ir;make ${PROTOCOL_LIB})
  138.  
  139. $(UI_LIB):: $(LIBUI_OBJ)
  140.     -mkdir -p $(LIBDIR)
  141.     $(AR) $(ARFLAGS) $@ $(LIBUI_OBJ)
  142.     $(RANLIB) $@
  143.  
  144. $(SHELL_UTIL_CMD):: $(QOBJ) $(OBJS) $(IR_LIB) $(PROTOCOL_LIB)
  145.     $(RM) $@; \
  146.     $(CC) $(LFLAGS) -o $@ $(QOBJ) $(OBJS) \
  147.         $(IR_LIB) $(PROTOCOL_LIB) $(LIBS) $(FTWLIB) -lm $(RESOLVER)
  148.  
  149. $(SHELL_UI_CMD):: $(SHELL_UI_OBJ) $(IR_LIB) $(PROTOCOL_LIB)
  150.         $(RM) $(SHELL_UI_CMD); \
  151.         $(CC) $(CFLAGS) $(LFLAGS) -o $(SHELL_UI_CMD) \
  152.         $(SHELL_UI_OBJ) \
  153.         $(IR_LIB) $(PROTOCOL_LIB) $(FTWLIB) -lm $(RESOLVER);
  154.  
  155. $(SHELL_UI_SIG_CMD):: $(SHELL_UI_OBJ) $(UI_SIG_LIB)
  156.         $(RM) $(SHELL_UI_SIG_CMD); \
  157.         $(CC) $(CFLAGS) $(LFLAGS) -o $(SHELL_UI_SIG_CMD) \
  158.               $(SHELL_UI_OBJ) \
  159.               $(UI_SIG_LIB) $(FTWLIB) -lm $(RESOLVER);
  160.  
  161. $(SCREEN_UI_CMD):: $(SOBJ) $(OBJS) $(IR_LIB) $(PROTOCOL_LIB)
  162.         $(RM) $@; \
  163.         $(CC) $(CFLAGS) $(LFLAGS) -o $@ \
  164.               $(SOBJ) $(OBJS) \
  165.               $(IR_LIB) $(PROTOCOL_LIB) $(SCREENLIBS) \
  166.               $(FTWLIB) -lm $(RESOLVER);
  167. #
  168. # Saber loading.  Tuned for Saber 3.0
  169. #
  170.  
  171. screen_ui_src::     $(IR_LIB) $(PROTOCOL_LIB) $(SCREEN_UI_SRC) $(SSRC) $(SRC)
  172.         #suppress 53
  173.         #suppress 530
  174.         #suppress 529
  175.         #suppress 558
  176.         #suppress 590
  177.         #load -I../ir/ $(IR_LIB) $(PROTOCOL_LIB) $(SSRC) $(SRC)
  178.         #load /usr/lib/libm.a /usr/lib/libcurses.a /usr/lib/libtermcap.a
  179.  
  180. shell_ui_src::    $(IR_LIB) $(PROTOCOL_LIB) $(SHELL_UI_SRC)
  181.         #suppress 53
  182.         #suppress 530
  183.         #suppress 529
  184.         #suppress 558
  185.         #suppress 590
  186.         #load $(CFLAGS) $(SHELL_UI_SRC) $(IR_LIB) $(PROTOCOL_LIB)
  187.         #load /usr/lib/libm.a
  188.  
  189. waisq_src::    $(SRC) $(QSRC)
  190.         #suppress 53
  191.         #suppress 530
  192.         #suppress 529
  193.         #suppress 558
  194.         #suppress 590
  195.         #load -I../ir/  $(SRC) $(QSRC)
  196.         #load /usr/lib/libm.a
  197.  
  198. install:: $(SHELL_UI_CMD) $(SHELL_UTIL_CMD) $(SCREEN_UI_CMD)
  199.     -rm -f $(BINDIR)/$(SHELL_UI_CMD)
  200.     $(INSTALL) $(SHELL_UI_CMD) $(BINDIR)/$(SHELL_UI_CMD)
  201.     -rm -f $(BINDIR)/$(SHELL_UTIL_CMD)
  202.     $(INSTALL) $(SHELL_UTIL_CMD) $(BINDIR)/$(SHELL_UTIL_CMD)
  203.     -rm -f $(BINDIR)/$(SCREEN_UI_CMD)
  204.     $(INSTALL) $(SCREEN_UI_CMD) $(BINDIR)/$(SCREEN_UI_CMD)
  205.  
  206. # Remove objects and library.
  207. clean::
  208.     $(RM) *.o
  209.     $(RM) *.sbin *.sbin3
  210.     $(RM) *~
  211.     $(RM) \#*\#
  212.     $(RM) .nfs*  # NFS Lossage
  213.     $(RM) wais.elc
  214.     $(RM) $(SHELL_UI_CMD)
  215.     $(RM) $(SHELL_UI_SIG_CMD)
  216.     $(RM) $(SHELL_UTIL_CMD)
  217.     $(RM) $(SCREEN_UI_CMD)
  218.     $(RM) core
  219.  
  220. DependTarget()
  221.